import request from '@/config/axios'

// 固定资产 VO
export interface AssetsFixedVO {
  id: number // 编号
  assetCode: string // 物资编号
  categoryId: number // 分类ID
  name: string // 物资名称
  specification: string // 规格型号
  unitPrice: number // 单价
  unit: string // 计量单位
  sort: number // 排序
  status: number // 状态
  remark: string // 备注
  inCount: number //入库数量
  inRemark: string //入库说明
  price: number //维修费用
}

export interface AssetsFixedSimpleVO {
  categoryId: number // 分类ID
  assetName: string // 物资名称
  assetQuantity: number // 物资数量
}

// 固定资产 API
export const AssetsFixedApi = {
  // 查询固定资产分页
  getAssetsFixedPage: async (params: any) => {
    return await request.get({ url: `/school/assets-fixed/page`, params })
  },

  //查询固定资产列表，根据name分组
  getAssetsFixedList: async () => {
    return await request.get({ url: `/school/assets-fixed/list` })
  },

  // 查询固定资产详情
  getAssetsFixed: async (id: number) => {
    return await request.get({ url: `/school/assets-fixed/get?id=` + id })
  },

  // 新增固定资产
  createAssetsFixed: async (data: AssetsFixedVO) => {
    return await request.post({ url: `/school/assets-fixed/create`, data })
  },

  // 修改固定资产
  updateAssetsFixed: async (data: AssetsFixedVO) => {
    return await request.put({ url: `/school/assets-fixed/update`, data })
  },

  //资产操作：领用，归还，报修，报废等
  operAssetsFixed: async (data: AssetsFixedVO) => {
    return await request.put({ url: `/school/assets-fixed/oper`, data })
  },

  // 删除固定资产
  deleteAssetsFixed: async (id: number) => {
    return await request.delete({ url: `/school/assets-fixed/delete?id=` + id })
  },

  // 导出固定资产 Excel
  exportAssetsFixed: async (params) => {
    return await request.download({ url: `/school/assets-fixed/export-excel`, params })
  },

  // 根据物资流转分组统计数量
  getAssetsFixedReportByFlow: async () => {
    return await request.get({ url: `/school/assets-fixed/report-by-flow` })
  },

  /**
   * 根据年份统计数量
   * @param {string} year 年份
   * @returns
   */
  getAssetsFixedReportByYear: async (year) => {
    return await request.get({ url: `/school/assets-fixed/report-by-year?year=${year}` })
  }
}
